// flow特殊类型：
/**
 * @flow
 */

// 字面量类型：限制变量必须是某一个值
const a: 'foo' = 'foo'

const type: 'success' | 'warning' | 'danger' = 'success'

const b: string | number = 'str' || 100

// 联合类型声明:type 声明变量类型，可用于多个地方重复使用
type strOrNum = string | number

const c: strOrNum = 'str' || 100

// Maybe类型

const gender: ? number = undefined
    // <=>
const gender2: number | void | null = undefined